【推荐--ctr】技术演化
引自:https://zhuanlan.zhihu.com/p/54822778
目前ctr技术发展迅速,相关算法结构层出不穷,但架构内涵大同小异,梳理不同阶段的ctr的方法,实质更深层次的是在考虑不同阶段面对ctr预估问题的核心思考点&处理问题的差异性。
我们的原则是:只靠照抄操作毫无意义,重点是挖掘每一步操作的深层原因
现在是情况就是:各模块(FM、Product、Attention等)的相互组合尝试(短期可用,切勿上瘾,及时止损)
早期 -- 机器学习时代 -- 2005~2015
参考:https://mp.weixin.qq.com/s/MtnHYmPVoDAid9SNHnlzUw
- 早期初期:LR + 低维统计特征
- 早期中期:LR + 高维稀疏特征
- 原则:细粒度特征的清晰度要高于统计类特征的刻画粒度
- 实质:特征体系的构建
- 早期末期:FM/MLR + 高维稀疏特征
- 原则:组合特征对结果的作用
- 实质:非线性因素+组合特征
中期 -- 深度学习
参考:https://zhuanlan.zhihu.com/p/34940250
中期初期:高维稀疏特征转化为高阶泛化特征
- 原则:在高维稀疏特征场景下,保证样本的训练充足
- 实质:高维稀疏特征+非线性 --> 参数较多,样本不足。高维系数特征转化为低维稠密向量
- 问题:非端到端,断层式训练如何优化?
将高维稀疏转化为相对低维的转化,如何选择合适的维度?维度太低,遗失大量信息;维度太高,对匹配模型的计算要求较高
中期中期:端到端的深度学习结构
- 原则:局部感知野(Local Receptive Field)concat 所有field的低维表达
- 实质:端到端,分field获取embedding向量后进行concat
- 模型:DeepFm GwEN (架构完全一致)WDL、FNN、PNN
GwEN和DeepFm是将用户和计划的不同field的特征按照filed进行embedding_lookup然后sum得出不同field的vector,concat后送入匹配model
GwEN的维度降到千维表达
中期末期:attention的引入
- 原则:不同类型的特征的贡献程度不同
- 实质:在对特征进行sum or average操作的时候,用户的表达是多峰的,但是对特定的item产生影响的是局部的特征(特征field的过滤或者分权)
- 模型:DIN
DIN : 定长向量自适应表达用户的多峰兴趣分布;实质:捕获用户兴趣的多样性和与预测目标的局部相关性
具体实现:从用户行为中捕获同candidate有关的行为进行整合构建局部兴趣激活单元
现在 -- 模型工程
- 早期:把特征工程的经验搬上DL模型
- 原则:用人工构造的代数式先验来帮助模型建立对某种认知模式的预设
- 实质:对不同field的embedding向量进行特征组合(内积等)
- 中期:超越单体模型 -- 多模态/多目标/多场景/多模块
- 末期:综合算法设计的框架构建 -- 模型压缩/迁移学习d